
import {reqDefaultHotKeyword, reqKeywordsList, reqAllKeywordInfo} from '@/api'
//定义一个state —— 存储数据
const state = {
  hotKeywordVOList:[], //热门关键字
  keywordList:[],  //实时关键字搜索数据
  AllKeywordsInfo:{}, // 根据关键字获取所有的商品详情
}

//定义一个actions —— 接收组件里的动作
const actions = {

  // 获取默认关键字和热门关键字
  async getDefaultHotKeyword({commit}){
    const result = await reqDefaultHotKeyword()
    if(result.code === '200'){
      commit('SAVE_DEFAULTHOT_KEYWORDS',result.data)
    }
  },

  // 实时关键字列表
  async getKeywordList({commit},keyword){
    const result = await reqKeywordsList(keyword)
    if(result.code === '200'){
      commit('SAVE_KEYWORDS_LIST',result.data)
    }
  },

  // 根据关键字获取所有的商品详情
  async getAllKeywordsInfo({commit},keyword){
    const result = await reqAllKeywordInfo(keyword)
    if(result.code === '200'){
      commit('SAVE_AllKEYWORDS_Info',result.data)
    }
  },

}

//定义一个mutations —— 用于真正去修改数据
const mutations = {

  // 获取默认关键字和热门关键字
  SAVE_DEFAULTHOT_KEYWORDS(state,data){
    state.hotKeywordVOList = data.hotKeywordVOList
  },

  // 实时关键字搜索
  SAVE_KEYWORDS_LIST(state,data){
    state.keywordList = data
  },

  // 根据关键字获取所有的商品详情
  SAVE_AllKEYWORDS_Info(state,data){
    state.AllKeywordsInfo = data
  },

}

//定义一个getters —— 对state中的数据进行一番处理
const getters = {
  // 实时搜索列表
  directlyList(state){
    return state.AllKeywordsInfo.directlyList
  },
  // 详情分类
  categoryL1List(state){
    return state.AllKeywordsInfo.categoryL1List
  },
}

export default {
	actions,
	mutations,
	state,
	getters,
}